<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="./dist/vue.js"></script>
    <style>
        .active{
            color:red
        }
    </style>
</head>
<body>
    <div id="app">
       <my-parent></my-parent>
    </div>
</body>
<template id="parent">
    <div>父组件
        <!-- 父组件要调用子组件 -->
        <my-child></my-child>
    </div>
</template>
<template id="child">
    <div>子组件
        <h3>我是子组件</h3>
        <!-- 子组件直接通过 this.$parent.属性名 来使用父组件的数据 -->
        <span class="active">{{this.$parent.money}}</span>
        <!-- 子组件直接通过 this.$parent.方法名() 来使用父组件的方法 -->
        <button @click="getData">子组件直接使用父组件的方法</button>
    </div>
</template>
<script>
    const Child={
        template:'#child',
        methods:{
            getData(){
                this.$parent.getData()
            }
        }
    }
    const Parent={
        template:'#parent',
        components:{
            'my-child':Child
        },
        data(){
            return {
                money:1800,
            }
        },
        methods:{
            getData(){
                console.log('我是父组件中定义的方法')
            }
        }
    }
    new Vue({
        el:"#app",
        components:{
            'my-parent':Parent
        }
    })
</script>
</html>